package br.boicotando.shared;

import java.util.Date;

public class Util {
	
	/**
     * Formata string segundo um padrão de zeros e símbolos
     * 
     * @param str string alvo contendo qualquer conteúdo
     * @param mascara padrão/máscara de formatação "00-000,00/0" (os "0" serão substituídos pelos caracteres do parametro "s")
     */
    public static String strFormata(String str, String mascara) {
        String out = "";
        int symbols = 0;
        for (int i = 0; i <= mascara.length() - 1; i++) {
            if (mascara.charAt(i) == '0') {
                out += str.charAt(i - symbols);
            } else {
                out += mascara.charAt(i);
                symbols++;
            }
        }
        return out;
    }
    
    public static String strRemove(String str, char simbolos[]) {
    	StringBuffer sb = new StringBuffer();
    	char chars[] = str.toCharArray();
    	for (int i = 0; i < chars.length; ++i) {
    		boolean adiciona = true;
    		for (int j = 0; j < simbolos.length; ++j) {
    			if (chars[i] == simbolos[j]) {
    				adiciona = false;
    			}
    		}
    		if (adiciona) {
    			sb.append(chars[i]);
    		}
    	}
    	return sb.toString();
    }
    
    public static boolean anoEhBissesto(int ano) {
    	return (((ano % 4 == 0) && (ano % 100 != 0)) || (ano % 400 == 0));
    }
        
	public static String getAUID() {
		return new Double(Math.random() * 1000 + (new Date()).getTime()).toString();
	}
	
}
